﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;

namespace HotelManageSystem.Domain.Entities
{
    /// <summary>
    /// Class Name:     Client
    /// Author:         Wenshu Zhang
    /// Creation Date:  2011-12-29
    /// Description:    客户信息
    /// QA:             
    /// -----------------------------------------
    /// </summary>
    public  class Client
    {
        public Client()
        {
            HotelingHistoryCollection = new Collection<HotelingHistory>();
        }
        [Key]
        public string ID { get; set; }

       [Required]
        public string Name { get; set; }

        public virtual ClientType ClientType { get; set; }

        public string Sex { get; set; }

        public virtual CertificateType CertificateType { get; set; }

       // [Required]
        public string CertID { get; set; }

      //  [Required]
        public string Address { get; set; }

       // [Required]
        public string PresentAddress { get; set; }//现在居住地

        public string Telphone { get; set; }

        public string Vocation { get; set; }    //职业

        public string CompanyName { get; set; }

       // [Required]
        [DataType(DataType.Date)]
        public DateTime Birthday { get; set; }

        public decimal AdvancePayment { get; set; }//定金

        public int HotelingDays { get; set; }//入住天数

        [DefaultValue(false)]
        public bool IsCheckOut { get; set; }//标识是否退房

        public bool IsFreeze { get; set; }

        public string Memo { get; set; }//备忘录

        public virtual ICollection<HotelingHistory> HotelingHistoryCollection { get; set; }

        public virtual Room Room { get; set; }

        public virtual HotelingInfomation HotelingInfomation { get; set; }
    }
}
